#include <iostream>
#include <string.h>

#ifdef __APPLE__
#include <OpenGL/gl3.h>
#include <GLUT/GLUT.h>
#else
#include <GL/glut.h>
#endif

namespace GLSLHelper {
    //load source code
	std::string LoadSourceCode(std::string filename);

    //prepare shader
    GLuint PrepareShader(std::string shaderSource, GLenum shaderType);

    //prepare program
    GLuint PrepareProgram(GLuint vtx_shader, GLuint frag_shader, GLuint geo_shader = 0, GLuint tes_shader = 0, GLuint comput_shader = 0);
	
	//link program
	void LinkProgram(GLuint program);
	
}
